百模大战的赢家最终会是开源模型 | 近匠
“我期望的未来是能够在共同的项目上进行全球合作,能够在未来找到一种不受语言、时区、政治等障碍影响的方法,共同协作。”2022 年,CSDN《新程序员》采访了 Apache 之父 & OpenSSF 基金会总经理 Brian Behlendorf,这句话正是他在最后吐露的最真挚且崇高的开源理想。
时过境迁,Brian 现在已经是 OpenSSF 基金会的首席技术官,他带领基金会成为了连接一百家企业的庞大组织,将安全的保护散步开源领域的每一处,预防下一次“Log4j2 危机”爆发。在他的“排兵布阵”下,分布在世界各地的 OpenSSF 工作组各司其职,不同国家、不同时区、不同公司的人达成共识,贯彻开源精神实现着全球化的安全治理。
时间同样改变了全球最热切的话题,ChatGPT 的问世让 AI 席卷各大领域,吸引了包括科技巨头、企业领袖和创业家在内的人们的关注。当马斯克和黄仁勋在人工智能相关新闻上出尽风头的同时,深耕开源领域的 Brian 同样将目光放在了火爆的大模型上:在他看来,AI 模型最后的“大赢家”将会是开源模型,风靡一时的 ChatGPT 正如当年不可一世的 Windows 98,但最终全世界的电子设备几乎都选用了同时代的开源操作系统 Linux。
本期《近匠》,Brian Behlendorf 来到中国面对面对话 CSDN &《新程序员》首席内容顾问邹欣,他不仅会聊 OpenSSF 在疫情期间的应对经验,还会带来自己对人工智能的独到观点以及给学生、程序员和广大开发者的宝贵建议。
ChatGPT 就像当年的 Win 98,
Brian:我不知道 OpenAI 现在有多开放,但它无疑利用了现存的所有开源工具训练大量的数据,将 GPT-1 迭代到了 GPT-4。从某些角度来看, OpenAI 的成功有些类似于当年微软推出的 Windows 98,它象征着微软某一时期的成果总结。ChatGPT 扮演着平台的角色,为初创公司提供了机会,也是时代变迁中的一个重要节点。当我们审视这个转折点时,有一点值得铭记:当 Windows 98 发布时,Linux 还未为人所知。Linux 如今已成为众多领域的支柱,大多数电子设备都基于 Linux 运行。最初被视为慈善甚至学术研究的 Linux,发展成了支撑 70% 到 90% 技术品牌的核心。
开源的力量不容忽视,在目睹 ChatGPT 和其他大语言模型崭露头角之后,我们也见证了开源大语言模型领域的蓬勃发展。一些企业如 HuggingFace,在这一领域取得了持续进展。开源模型的影响力正在逐渐增大,与 ChatGPT 的差距也在迅速缩小。这些开源模型将经过更加高效的训练,融合更多的模式。我坚信,到今年年底,开源模型将能够与闭源模型平分秋色。Windows 98 和 ChatGPT 由单一公司、单一产品主导,这种模式虽然高效且专注,能够创造出许多令人惊叹的成果,但我认为开发者普遍渴望未来的软件模式更加倾向于去中心化,渴望在多人参与的模式下构建一个更加开源开放的开发环境。
长期以来,Linux 基金会设有针对收集大数据的工具和策略,成立了 LF AI & Data 基金会,这对构建大模型至关重要。华为,ZTE,阿里、CSDN 的加入使这些模型更加可靠。另外,LF AI & Data 最近成立了 Generative AI 工作组,专职开源大模型方面的项目,预计 9 月在深圳发布。
邹欣:IT 领域已经在历史上证明过多人开发往往能带来更好的结果。期待未来有更好的开源大模型,让不同的公司可以利用它们自由地探索不一样的应用模式。此外,今年 6 月,OpenAI CEO Sam Altman 在一次演讲中呼吁全球的安全合作,在你看来全球协作最大的障碍是什么?
Brian:Linux 其实并不比 Windows 更安全,但人们对 Linux 的信任源于其开源的特性。相信自己能够发现潜在的安全漏洞并进行修复,这使得 Linux 更加透明且更容易被审查。正是因为开源软件能够被许多人审查、改进和分享,更加安全的代码才能诞生。
和开源软件类似,人工智能模型也可能受益于更多的合作、改进和共享。人们对人工智能的担忧和疑虑可能会随着更多人的参与和直接合作而得到解答。通过与模型的合作、重新组合、改进和整合,人工智能也可能变得更加透明和可信,从而解决人们对其发展方向的担忧。
消除时区和文化差异的全球协作,或许要靠 AI
邹欣:这是你在疫情后首次来中国,OpenSSF 是个怎样的组织?过去三年它经历了哪些变化?
Brian:去年年底,Linux 基金会内部为 OpenSSF 定制了一系列不同的策略,目标是改善开源软件的原始安全状态,并解决一些软件供应链上的缺陷。这些项目很快被社区主导,我当时是牵头人。
在此之前,我已经在 Linux 基金会的开源项目 Hyperledger 担任了 5 年的执行董事,后来从 Hyperledger 转向了更具规模的基金会事业。由于 Log4j2、SolarWinds 这些著名的安全事故引发广泛关注,OpenSSF 得以成立。如今我是 OpenSSF 的 CTO。
我用了三年时间让 OpenSSF 成为了一个连接 100 家公司的组织,包含了不少大企业,比如华为、腾讯、阿里还有很多中国的公司。为了查明开源软件及其代码的安全漏洞,我们发起了一系列的项目,测量开源软件的风险、让软件通过训练 Dev 并变得更安全、编写更安全的代码、查看特定于供应链的工具(比如通过软件工程的签名给出一个框架来描述软件的安全级别)等等。我们的使命就是封锁这些漏洞。
邹欣:开源供应链是开源生态系统的重要组成部分,你在很多演讲场合都强调了这一点。什么是开源供应链?它为何如此重要?
Brian:开源软件与互联网密不可分。在互联网发展的初期,我们能轻松地给任何人发邮件,甚至伪造白宫的名义发总统信函,恶作剧骗人。在 TLS 普及之前,每个人对互联网上的内容有着极高的信任度。但随着人们深入开源软件领域,逐渐学会了关注项目在其网站上发布构建包时的监管链,了解从 GitHub 仓库到软件包发布网站再到个人设备的整个过程,了解哪些环节可能存在不适当的干扰。在复杂的企业环境中,供应链变得日益复。
因此,OpenSSF 推出了两项技术,以防止下一次 Log4j2 或 SolarWinds 事故。首先是 SIGSTOR,这是一个签名平台,类似于 Let's Encrypt(一个熟知的 TLS 证书颁发机构)。SIGSTOR 允许开发者轻松地对发布版本和构建压缩包进行签名。这使得代码通过系统时,可以在仓库验证开发者的身份,从而增强了供应链完整性。
其次是 SLSA,即“Supplychain Levels for Software Artifacts”(软件工件的供应链级别)。SLSA 提供了一种标准或规范,即在供应链中流动的软件工件是在何种条件下制造的。这涵盖了使用可信硬件的情况、发布源代码压缩包时是否有多人签名确认等。这是一种自我验证的方法,基于谷歌内部开发的技术,已经成为了开源项目,被用于管理软件供应链中的风险。
邹欣:OpenSSF 基金会有六个指定的安全相关工作组。为什么是六个?他们是如何协作的?
Brian:其实我们准备将工作组的数量增加至九个。
在 OpenSSF 成立之初,社区内就已经涌现出各种不同的想法和项目。于是组织开始按主题将各种项目进行分类,最终,OpenSSF 的活动被分类到不同工作组中。有人关注供应链的、测量软件风险的工具开发,还有人编写代码的最佳实践,提供工具、文档和指南。最近我们成立了一支新的工作组,计划从银行和医疗保健公司的角度出发,帮助用户将工具有机地结合在一起使用。
工作组的设立是一种扩展的方式,目前我们正在启动一个专注于人工智能和机器学习的工作组,试图探索如何利用人工智能来提升软件的安全性,并关注人工智能本身的安全问题,并找到方法来协调不同的活动,使它们真正创造价值。
邹欣:工作组的成员分布在世界各地,OpenSSF 如何让不同国家、不同时区、不同公司的人达成共识,并实行有效的工作模式?
Brian:这确实是开源项目长期以来的挑战。我从希腊的二头政治(diarchy)中获取了灵感,让拥有不同动机、优先事项和技能的人能够协同工作。
在开源项目组里,每个人都有自己的优先事项,有好想法并不意味着别人就会去跟随。因此,关键在于如何建立一种框架,使人们不仅有好的想法,还愿意付诸实际行动,提交拉取请求或提供文档。也就是说,我们需要在工作组中塑造一种文化。在开源项目中,人们需要频繁地沟通、保持开放、避免内讧。这就是建立社区的艺术,我从 Linux 基金会的案例中已经学会了如何做到这一点,而且做得很出色。
在考虑构建全球团队时,时区问题是我最担心的。在我参与开发 Apache 时,一切都以电子邮件为主,基本原则是:如果一件事没有在电子邮件列表上发生,那么它就没有发生。因为电子邮件没有时区限制,在这种工作环境下,就算隔几个小时才回复邮件,也没有关系。然而,在 Zoom 或 Slack 上的实时通话中,合作可能会变得困难。现在许多开源项目都非常注重实时聊天和视频会议。这确实是件好事,人们寻求帮助变得更容易了,人面对面交流的时候合作也会变得更加顺畅。但这些工具确实让不同时区的参与者的合作变得困难,这点是不可忽视的。
因此,我们一直在考虑是否将一些会议安排在亚太地区的工作时间。在中国的 Hyperledger 项目中,我们创建了一个专注于支持本地开发者的中国本地社区,并提供翻译等支持。当有人想要做出贡献时,我们会成为连接全球社区的桥梁。OpenSSF 也在推进类似的工作,并将许多 OpenSSF 网站、文档翻译成了中文,通过微信频道分享,却仍然面临着如何将更多中国人引入项目的挑战。
邹欣:我发现了你的窍门,那就是先解决本地的问题。
Brian:是的。开发者在涉足任何开源项目时都会面临一个学习曲线,有时候可能会缺少文档,我们必须帮助开发者理解项目的运作方式。如果你的开发人员不懂英语,这无疑会带来一些挑战。哪怕是当今最好的机器翻译,也没法彻底解决这个问题。我认为未来最坏的情况就是每个问题都在两个不同的开源项目中得到解决,比方说一个在中国,另一个在美国。我真的希望能够共同构建通用的技术解决方案,也许未来的人工智能翻译可以解决这个问题。
我们必须创造出应对时区差异和文化差异的方法。正是因此,我才行至中国,Linux 基金会也在中国举办活动。即使在过去最困难的时刻,我们仍然与世界各地的开源开发者紧密合作,持续不断地努力着。
安全问题不应亡羊补牢,而是防患于未然
邹欣:这门课程适合大学生学习吗?
Brian:这不是一门很深的技术课程。在学习这门课程之前,最好至少已经学过一门编程语言。可以是 Python 或者 Go,当然也可以是 C。
这门课程将帮助学生在职业生涯中更好地理解和应用软件安全的基本原则,打下坚实的基础。也能帮助人们意识到安全问题并不是亡羊补牢,而是可以防患于未然。如果把安全性问题留到最后,它可能永远都不会得到解决。通过学习这些技术,开发者会在编写代码的过程中采取一些措施来提高代码的安全性,而不是等到最后才来考虑。
不懂开源,别想学好计算机科学
不懂开源,别想学好计算机科学
如果 AI 能帮助所有人成为 10x 开发者,那就来吧!
“我希望为女儿创造一个更好的世界”
推荐阅读:
▶百度文心大模型 3.5 斩获7个满分、三个第一;苹果正在测试 AppleGPT 产品;谷歌给员工断网,降低网络攻击风险|极客头条